//-------------------------------------------------------------------------------------------------------
// Copyright (C) Microsoft. All rights reserved.
// Licensed under the MIT license. See LICENSE.txt file in the project root for full license information.
//-------------------------------------------------------------------------------------------------------

function write(v) { WScript.Echo(v + ""); }

function foo() {}

write(new Number(Number.MIN_VALUE) % -0);
write(new Number(Number.MIN_VALUE) % 0);
write(new Number(Number.MIN_VALUE) % 0.0);
write(new Number(Number.MIN_VALUE) % -0.0);
write(new Number(Number.MIN_VALUE) % +0.0);
write(new Number(Number.MIN_VALUE) % 1);
write(new Number(Number.MIN_VALUE) % 10);
write(new Number(Number.MIN_VALUE) % 10.0);
write(new Number(Number.MIN_VALUE) % 10.1);
write(new Number(Number.MIN_VALUE) % -1);
write(new Number(Number.MIN_VALUE) % -10);
write(new Number(Number.MIN_VALUE) % -10.0);
write(new Number(Number.MIN_VALUE) % -10.1);
write(new Number(Number.MIN_VALUE) % Number.MAX_VALUE);
write(new Number(Number.MIN_VALUE) % Number.MIN_VALUE);
write(new Number(Number.MIN_VALUE) % Number.NaN);
write(new Number(Number.MIN_VALUE) % Number.POSITIVE_INFINITY);
write(new Number(Number.MIN_VALUE) % Number.NEGATIVE_INFINITY);
write(new Number(Number.MIN_VALUE) % new Number(NaN));
write(new Number(Number.MIN_VALUE) % new Number(+0));
write(new Number(Number.MIN_VALUE) % new Number(-0));
write(new Number(Number.MIN_VALUE) % new Number(0));
write(new Number(Number.MIN_VALUE) % new Number(0.0));
write(new Number(Number.MIN_VALUE) % new Number(-0.0));
write(new Number(Number.MIN_VALUE) % new Number(+0.0));
write(new Number(Number.MIN_VALUE) % new Number(1));
write(new Number(Number.MIN_VALUE) % new Number(10));
write(new Number(Number.MIN_VALUE) % new Number(10.0));
write(new Number(Number.MIN_VALUE) % new Number(10.1));
write(new Number(Number.MIN_VALUE) % new Number(-1));
write(new Number(Number.MIN_VALUE) % new Number(-10));
write(new Number(Number.MIN_VALUE) % new Number(-10.0));
write(new Number(Number.MIN_VALUE) % new Number(-10.1));
write(new Number(Number.MIN_VALUE) % new Number(Number.MAX_VALUE));
write(new Number(Number.MIN_VALUE) % new Number(Number.MIN_VALUE));
write(new Number(Number.MIN_VALUE) % new Number(Number.NaN));
write(new Number(Number.MIN_VALUE) % new Number(Number.POSITIVE_INFINITY));
write(new Number(Number.MIN_VALUE) % new Number(Number.NEGATIVE_INFINITY));
write(new Number(Number.MIN_VALUE) % '');
write(new Number(Number.MIN_VALUE) % 0xa);
write(new Number(Number.MIN_VALUE) % 04);
write(new Number(Number.MIN_VALUE) % 'hello');
write(new Number(Number.MIN_VALUE) % 'hel' + 'lo');
write(new Number(Number.MIN_VALUE) % String(''));
write(new Number(Number.MIN_VALUE) % String('hello'));
write(new Number(Number.MIN_VALUE) % String('h' + 'ello'));
write(new Number(Number.MIN_VALUE) % new String(''));
write(new Number(Number.MIN_VALUE) % new String('hello'));
write(new Number(Number.MIN_VALUE) % new String('he' + 'llo'));
write(new Number(Number.MIN_VALUE) % new Object());
write(new Number(Number.MIN_VALUE) % new Object());
write(new Number(Number.MIN_VALUE) % [1, 2, 3]);
write(new Number(Number.MIN_VALUE) % [1 ,2 , 3]);
write(new Number(Number.MIN_VALUE) % new Array(3));
write(new Number(Number.MIN_VALUE) % Array(3));
write(new Number(Number.MIN_VALUE) % new Array(1 ,2 ,3));
write(new Number(Number.MIN_VALUE) % Array(1));
write(new Number(Number.MIN_VALUE) % foo);
write(new Number(Number.NaN) % undefined);
write(new Number(Number.NaN) % null);
write(new Number(Number.NaN) % true);
write(new Number(Number.NaN) % false);
write(new Number(Number.NaN) % Boolean(true));
write(new Number(Number.NaN) % Boolean(false));
write(new Number(Number.NaN) % new Boolean(true));
write(new Number(Number.NaN) % new Boolean(false));
write(new Number(Number.NaN) % NaN);
write(new Number(Number.NaN) % +0);
write(new Number(Number.NaN) % -0);
write(new Number(Number.NaN) % 0);
write(new Number(Number.NaN) % 0.0);
write(new Number(Number.NaN) % -0.0);
write(new Number(Number.NaN) % +0.0);
write(new Number(Number.NaN) % 1);
write(new Number(Number.NaN) % 10);
write(new Number(Number.NaN) % 10.0);
write(new Number(Number.NaN) % 10.1);
write(new Number(Number.NaN) % -1);
write(new Number(Number.NaN) % -10);
write(new Number(Number.NaN) % -10.0);
write(new Number(Number.NaN) % -10.1);
write(new Number(Number.NaN) % Number.MAX_VALUE);
write(new Number(Number.NaN) % Number.MIN_VALUE);
write(new Number(Number.NaN) % Number.NaN);
write(new Number(Number.NaN) % Number.POSITIVE_INFINITY);
write(new Number(Number.NaN) % Number.NEGATIVE_INFINITY);
write(new Number(Number.NaN) % new Number(NaN));
write(new Number(Number.NaN) % new Number(+0));
write(new Number(Number.NaN) % new Number(-0));
write(new Number(Number.NaN) % new Number(0));
write(new Number(Number.NaN) % new Number(0.0));
write(new Number(Number.NaN) % new Number(-0.0));
write(new Number(Number.NaN) % new Number(+0.0));
write(new Number(Number.NaN) % new Number(1));
write(new Number(Number.NaN) % new Number(10));
write(new Number(Number.NaN) % new Number(10.0));
write(new Number(Number.NaN) % new Number(10.1));
write(new Number(Number.NaN) % new Number(-1));
write(new Number(Number.NaN) % new Number(-10));
write(new Number(Number.NaN) % new Number(-10.0));
write(new Number(Number.NaN) % new Number(-10.1));
write(new Number(Number.NaN) % new Number(Number.MAX_VALUE));
write(new Number(Number.NaN) % new Number(Number.MIN_VALUE));
write(new Number(Number.NaN) % new Number(Number.NaN));
write(new Number(Number.NaN) % new Number(Number.POSITIVE_INFINITY));
write(new Number(Number.NaN) % new Number(Number.NEGATIVE_INFINITY));
write(new Number(Number.NaN) % '');
write(new Number(Number.NaN) % 0xa);
write(new Number(Number.NaN) % 04);
write(new Number(Number.NaN) % 'hello');
write(new Number(Number.NaN) % 'hel' + 'lo');
write(new Number(Number.NaN) % String(''));
write(new Number(Number.NaN) % String('hello'));
write(new Number(Number.NaN) % String('h' + 'ello'));
write(new Number(Number.NaN) % new String(''));
write(new Number(Number.NaN) % new String('hello'));
write(new Number(Number.NaN) % new String('he' + 'llo'));
write(new Number(Number.NaN) % new Object());
write(new Number(Number.NaN) % new Object());
write(new Number(Number.NaN) % [1, 2, 3]);
write(new Number(Number.NaN) % [1 ,2 , 3]);
write(new Number(Number.NaN) % new Array(3));
write(new Number(Number.NaN) % Array(3));
write(new Number(Number.NaN) % new Array(1 ,2 ,3));
write(new Number(Number.NaN) % Array(1));
write(new Number(Number.NaN) % foo);
write(new Number(Number.POSITIVE_INFINITY) % undefined);
write(new Number(Number.POSITIVE_INFINITY) % null);
write(new Number(Number.POSITIVE_INFINITY) % true);
write(new Number(Number.POSITIVE_INFINITY) % false);
write(new Number(Number.POSITIVE_INFINITY) % Boolean(true));
write(new Number(Number.POSITIVE_INFINITY) % Boolean(false));
write(new Number(Number.POSITIVE_INFINITY) % new Boolean(true));
write(new Number(Number.POSITIVE_INFINITY) % new Boolean(false));
write(new Number(Number.POSITIVE_INFINITY) % NaN);
write(new Number(Number.POSITIVE_INFINITY) % +0);
write(new Number(Number.POSITIVE_INFINITY) % -0);
write(new Number(Number.POSITIVE_INFINITY) % 0);
write(new Number(Number.POSITIVE_INFINITY) % 0.0);
write(new Number(Number.POSITIVE_INFINITY) % -0.0);
write(new Number(Number.POSITIVE_INFINITY) % +0.0);
write(new Number(Number.POSITIVE_INFINITY) % 1);
write(new Number(Number.POSITIVE_INFINITY) % 10);
write(new Number(Number.POSITIVE_INFINITY) % 10.0);
write(new Number(Number.POSITIVE_INFINITY) % 10.1);
write(new Number(Number.POSITIVE_INFINITY) % -1);
write(new Number(Number.POSITIVE_INFINITY) % -10);
write(new Number(Number.POSITIVE_INFINITY) % -10.0);
write(new Number(Number.POSITIVE_INFINITY) % -10.1);
write(new Number(Number.POSITIVE_INFINITY) % Number.MAX_VALUE);
write(new Number(Number.POSITIVE_INFINITY) % Number.MIN_VALUE);
write(new Number(Number.POSITIVE_INFINITY) % Number.NaN);
write(new Number(Number.POSITIVE_INFINITY) % Number.POSITIVE_INFINITY);
write(new Number(Number.POSITIVE_INFINITY) % Number.NEGATIVE_INFINITY);
write(new Number(Number.POSITIVE_INFINITY) % new Number(NaN));
write(new Number(Number.POSITIVE_INFINITY) % new Number(+0));
write(new Number(Number.POSITIVE_INFINITY) % new Number(-0));
write(new Number(Number.POSITIVE_INFINITY) % new Number(0));
write(new Number(Number.POSITIVE_INFINITY) % new Number(0.0));
write(new Number(Number.POSITIVE_INFINITY) % new Number(-0.0));
write(new Number(Number.POSITIVE_INFINITY) % new Number(+0.0));
write(new Number(Number.POSITIVE_INFINITY) % new Number(1));
write(new Number(Number.POSITIVE_INFINITY) % new Number(10));
write(new Number(Number.POSITIVE_INFINITY) % new Number(10.0));
write(new Number(Number.POSITIVE_INFINITY) % new Number(10.1));
write(new Number(Number.POSITIVE_INFINITY) % new Number(-1));
write(new Number(Number.POSITIVE_INFINITY) % new Number(-10));
write(new Number(Number.POSITIVE_INFINITY) % new Number(-10.0));
write(new Number(Number.POSITIVE_INFINITY) % new Number(-10.1));
write(new Number(Number.POSITIVE_INFINITY) % new Number(Number.MAX_VALUE));
write(new Number(Number.POSITIVE_INFINITY) % new Number(Number.MIN_VALUE));
write(new Number(Number.POSITIVE_INFINITY) % new Number(Number.NaN));
write(new Number(Number.POSITIVE_INFINITY) % new Number(Number.POSITIVE_INFINITY));
write(new Number(Number.POSITIVE_INFINITY) % new Number(Number.NEGATIVE_INFINITY));
write(new Number(Number.POSITIVE_INFINITY) % '');
write(new Number(Number.POSITIVE_INFINITY) % 0xa);
write(new Number(Number.POSITIVE_INFINITY) % 04);
write(new Number(Number.POSITIVE_INFINITY) % 'hello');
write(new Number(Number.POSITIVE_INFINITY) % 'hel' + 'lo');
write(new Number(Number.POSITIVE_INFINITY) % String(''));
write(new Number(Number.POSITIVE_INFINITY) % String('hello'));
write(new Number(Number.POSITIVE_INFINITY) % String('h' + 'ello'));
write(new Number(Number.POSITIVE_INFINITY) % new String(''));
write(new Number(Number.POSITIVE_INFINITY) % new String('hello'));
write(new Number(Number.POSITIVE_INFINITY) % new String('he' + 'llo'));
write(new Number(Number.POSITIVE_INFINITY) % new Object());
write(new Number(Number.POSITIVE_INFINITY) % new Object());
write(new Number(Number.POSITIVE_INFINITY) % [1, 2, 3]);
write(new Number(Number.POSITIVE_INFINITY) % [1 ,2 , 3]);
write(new Number(Number.POSITIVE_INFINITY) % new Array(3));
write(new Number(Number.POSITIVE_INFINITY) % Array(3));
write(new Number(Number.POSITIVE_INFINITY) % new Array(1 ,2 ,3));
write(new Number(Number.POSITIVE_INFINITY) % Array(1));
write(new Number(Number.POSITIVE_INFINITY) % foo);
write(new Number(Number.NEGATIVE_INFINITY) % undefined);
write(new Number(Number.NEGATIVE_INFINITY) % null);
write(new Number(Number.NEGATIVE_INFINITY) % true);
write(new Number(Number.NEGATIVE_INFINITY) % false);
write(new Number(Number.NEGATIVE_INFINITY) % Boolean(true));
write(new Number(Number.NEGATIVE_INFINITY) % Boolean(false));
write(new Number(Number.NEGATIVE_INFINITY) % new Boolean(true));
write(new Number(Number.NEGATIVE_INFINITY) % new Boolean(false));
write(new Number(Number.NEGATIVE_INFINITY) % NaN);
write(new Number(Number.NEGATIVE_INFINITY) % +0);
write(new Number(Number.NEGATIVE_INFINITY) % -0);
write(new Number(Number.NEGATIVE_INFINITY) % 0);
write(new Number(Number.NEGATIVE_INFINITY) % 0.0);
write(new Number(Number.NEGATIVE_INFINITY) % -0.0);
write(new Number(Number.NEGATIVE_INFINITY) % +0.0);
write(new Number(Number.NEGATIVE_INFINITY) % 1);
write(new Number(Number.NEGATIVE_INFINITY) % 10);
write(new Number(Number.NEGATIVE_INFINITY) % 10.0);
write(new Number(Number.NEGATIVE_INFINITY) % 10.1);
write(new Number(Number.NEGATIVE_INFINITY) % -1);
write(new Number(Number.NEGATIVE_INFINITY) % -10);
write(new Number(Number.NEGATIVE_INFINITY) % -10.0);
write(new Number(Number.NEGATIVE_INFINITY) % -10.1);
write(new Number(Number.NEGATIVE_INFINITY) % Number.MAX_VALUE);
write(new Number(Number.NEGATIVE_INFINITY) % Number.MIN_VALUE);
write(new Number(Number.NEGATIVE_INFINITY) % Number.NaN);
write(new Number(Number.NEGATIVE_INFINITY) % Number.POSITIVE_INFINITY);
write(new Number(Number.NEGATIVE_INFINITY) % Number.NEGATIVE_INFINITY);
write(new Number(Number.NEGATIVE_INFINITY) % new Number(NaN));
write(new Number(Number.NEGATIVE_INFINITY) % new Number(+0));
write(new Number(Number.NEGATIVE_INFINITY) % new Number(-0));
write(new Number(Number.NEGATIVE_INFINITY) % new Number(0));
write(new Number(Number.NEGATIVE_INFINITY) % new Number(0.0));
write(new Number(Number.NEGATIVE_INFINITY) % new Number(-0.0));
write(new Number(Number.NEGATIVE_INFINITY) % new Number(+0.0));
write(new Number(Number.NEGATIVE_INFINITY) % new Number(1));
write(new Number(Number.NEGATIVE_INFINITY) % new Number(10));
write(new Number(Number.NEGATIVE_INFINITY) % new Number(10.0));
write(new Number(Number.NEGATIVE_INFINITY) % new Number(10.1));
write(new Number(Number.NEGATIVE_INFINITY) % new Number(-1));
write(new Number(Number.NEGATIVE_INFINITY) % new Number(-10));
write(new Number(Number.NEGATIVE_INFINITY) % new Number(-10.0));
write(new Number(Number.NEGATIVE_INFINITY) % new Number(-10.1));
write(new Number(Number.NEGATIVE_INFINITY) % new Number(Number.MAX_VALUE));
write(new Number(Number.NEGATIVE_INFINITY) % new Number(Number.MIN_VALUE));
write(new Number(Number.NEGATIVE_INFINITY) % new Number(Number.NaN));
write(new Number(Number.NEGATIVE_INFINITY) % new Number(Number.POSITIVE_INFINITY));
write(new Number(Number.NEGATIVE_INFINITY) % new Number(Number.NEGATIVE_INFINITY));
write(new Number(Number.NEGATIVE_INFINITY) % '');
write(new Number(Number.NEGATIVE_INFINITY) % 0xa);
write(new Number(Number.NEGATIVE_INFINITY) % 04);
write(new Number(Number.NEGATIVE_INFINITY) % 'hello');
write(new Number(Number.NEGATIVE_INFINITY) % 'hel' + 'lo');
write(new Number(Number.NEGATIVE_INFINITY) % String(''));
write(new Number(Number.NEGATIVE_INFINITY) % String('hello'));
write(new Number(Number.NEGATIVE_INFINITY) % String('h' + 'ello'));
write(new Number(Number.NEGATIVE_INFINITY) % new String(''));
write(new Number(Number.NEGATIVE_INFINITY) % new String('hello'));
write(new Number(Number.NEGATIVE_INFINITY) % new String('he' + 'llo'));
write(new Number(Number.NEGATIVE_INFINITY) % new Object());
write(new Number(Number.NEGATIVE_INFINITY) % new Object());
write(new Number(Number.NEGATIVE_INFINITY) % [1, 2, 3]);
write(new Number(Number.NEGATIVE_INFINITY) % [1 ,2 , 3]);
write(new Number(Number.NEGATIVE_INFINITY) % new Array(3));
write(new Number(Number.NEGATIVE_INFINITY) % Array(3));
write(new Number(Number.NEGATIVE_INFINITY) % new Array(1 ,2 ,3));
write(new Number(Number.NEGATIVE_INFINITY) % Array(1));
write(new Number(Number.NEGATIVE_INFINITY) % foo);
write('' % undefined);
write('' % null);
write('' % true);
write('' % false);
write('' % Boolean(true));
write('' % Boolean(false));
write('' % new Boolean(true));
write('' % new Boolean(false));
write('' % NaN);
write('' % +0);
write('' % -0);
write('' % 0);
write('' % 0.0);
write('' % -0.0);
write('' % +0.0);
write('' % 1);
write('' % 10);
write('' % 10.0);
write('' % 10.1);
write('' % -1);
write('' % -10);
write('' % -10.0);
write('' % -10.1);
write('' % Number.MAX_VALUE);
write('' % Number.MIN_VALUE);
write('' % Number.NaN);
write('' % Number.POSITIVE_INFINITY);
write('' % Number.NEGATIVE_INFINITY);
write('' % new Number(NaN));
write('' % new Number(+0));
write('' % new Number(-0));
write('' % new Number(0));
write('' % new Number(0.0));
write('' % new Number(-0.0));
write('' % new Number(+0.0));
write('' % new Number(1));
write('' % new Number(10));
write('' % new Number(10.0));
write('' % new Number(10.1));
write('' % new Number(-1));
write('' % new Number(-10));
write('' % new Number(-10.0));
write('' % new Number(-10.1));
write('' % new Number(Number.MAX_VALUE));
write('' % new Number(Number.MIN_VALUE));
write('' % new Number(Number.NaN));
write('' % new Number(Number.POSITIVE_INFINITY));
write('' % new Number(Number.NEGATIVE_INFINITY));
write('' % '');
write('' % 0xa);
write('' % 04);
write('' % 'hello');
write('' % 'hel' + 'lo');
write('' % String(''));
write('' % String('hello'));
write('' % String('h' + 'ello'));
write('' % new String(''));
write('' % new String('hello'));
write('' % new String('he' + 'llo'));
write('' % new Object());
write('' % new Object());
write('' % [1, 2, 3]);
write('' % [1 ,2 , 3]);
write('' % new Array(3));
write('' % Array(3));
write('' % new Array(1 ,2 ,3));
write('' % Array(1));
write('' % foo);
write(0xa % undefined);
write(0xa % null);
write(0xa % true);
write(0xa % false);
write(0xa % Boolean(true));
write(0xa % Boolean(false));
write(0xa % new Boolean(true));
write(0xa % new Boolean(false));
write(0xa % NaN);
write(0xa % +0);
write(0xa % -0);
write(0xa % 0);
write(0xa % 0.0);
write(0xa % -0.0);
write(0xa % +0.0);
write(0xa % 1);
write(0xa % 10);
write(0xa % 10.0);
write(0xa % 10.1);
write(0xa % -1);
write(0xa % -10);
write(0xa % -10.0);
write(0xa % -10.1);
write(0xa % Number.MAX_VALUE);
write(0xa % Number.MIN_VALUE);
write(0xa % Number.NaN);
write(0xa % Number.POSITIVE_INFINITY);
write(0xa % Number.NEGATIVE_INFINITY);
write(0xa % new Number(NaN));
write(0xa % new Number(+0));
write(0xa % new Number(-0));
write(0xa % new Number(0));
write(0xa % new Number(0.0));
write(0xa % new Number(-0.0));
write(0xa % new Number(+0.0));
write(0xa % new Number(1));
write(0xa % new Number(10));
write(0xa % new Number(10.0));
write(0xa % new Number(10.1));
write(0xa % new Number(-1));
write(0xa % new Number(-10));
write(0xa % new Number(-10.0));
write(0xa % new Number(-10.1));
write(0xa % new Number(Number.MAX_VALUE));
write(0xa % new Number(Number.MIN_VALUE));
write(0xa % new Number(Number.NaN));
write(0xa % new Number(Number.POSITIVE_INFINITY));
write(0xa % new Number(Number.NEGATIVE_INFINITY));
write(0xa % '');
write(0xa % 0xa);
write(0xa % 04);
write(0xa % 'hello');
write(0xa % 'hel' + 'lo');
write(0xa % String(''));
write(0xa % String('hello'));
write(0xa % String('h' + 'ello'));
write(0xa % new String(''));
write(0xa % new String('hello'));
write(0xa % new String('he' + 'llo'));
write(0xa % new Object());
write(0xa % new Object());
write(0xa % [1, 2, 3]);
write(0xa % [1 ,2 , 3]);
write(0xa % new Array(3));
write(0xa % Array(3));
write(0xa % new Array(1 ,2 ,3));
write(0xa % Array(1));
write(0xa % foo);
write(04 % undefined);
write(04 % null);
write(04 % true);
write(04 % false);
write(04 % Boolean(true));
write(04 % Boolean(false));
write(04 % new Boolean(true));
write(04 % new Boolean(false));
write(04 % NaN);
write(04 % +0);
write(04 % -0);
write(04 % 0);
write(04 % 0.0);
write(04 % -0.0);
write(04 % +0.0);
write(04 % 1);
write(04 % 10);
write(04 % 10.0);
write(04 % 10.1);
write(04 % -1);
write(04 % -10);
write(04 % -10.0);
write(04 % -10.1);
write(04 % Number.MAX_VALUE);
write(04 % Number.MIN_VALUE);
write(04 % Number.NaN);
write(04 % Number.POSITIVE_INFINITY);
write(04 % Number.NEGATIVE_INFINITY);
write(04 % new Number(NaN));
write(04 % new Number(+0));
write(04 % new Number(-0));
write(04 % new Number(0));
write(04 % new Number(0.0));
write(04 % new Number(-0.0));
write(04 % new Number(+0.0));
write(04 % new Number(1));
write(04 % new Number(10));
write(04 % new Number(10.0));
write(04 % new Number(10.1));
write(04 % new Number(-1));
write(04 % new Number(-10));
write(04 % new Number(-10.0));
write(04 % new Number(-10.1));
write(04 % new Number(Number.MAX_VALUE));
write(04 % new Number(Number.MIN_VALUE));
write(04 % new Number(Number.NaN));
write(04 % new Number(Number.POSITIVE_INFINITY));
write(04 % new Number(Number.NEGATIVE_INFINITY));
write(04 % '');
write(04 % 0xa);
write(04 % 04);
write(04 % 'hello');
write(04 % 'hel' + 'lo');
write(04 % String(''));
write(04 % String('hello'));
write(04 % String('h' + 'ello'));
write(04 % new String(''));
write(04 % new String('hello'));
write(04 % new String('he' + 'llo'));
write(04 % new Object());
write(04 % new Object());
write(04 % [1, 2, 3]);
write(04 % [1 ,2 , 3]);
write(04 % new Array(3));
write(04 % Array(3));
write(04 % new Array(1 ,2 ,3));
write(04 % Array(1));
write(04 % foo);
write('hello' % undefined);
write('hello' % null);
write('hello' % true);
write('hello' % false);
write('hello' % Boolean(true));
write('hello' % Boolean(false));
write('hello' % new Boolean(true));
write('hello' % new Boolean(false));
write('hello' % NaN);
write('hello' % +0);
write('hello' % -0);
write('hello' % 0);
write('hello' % 0.0);
write('hello' % -0.0);
write('hello' % +0.0);
write('hello' % 1);
write('hello' % 10);
write('hello' % 10.0);
write('hello' % 10.1);
write('hello' % -1);
write('hello' % -10);
write('hello' % -10.0);
write('hello' % -10.1);
write('hello' % Number.MAX_VALUE);
write('hello' % Number.MIN_VALUE);
write('hello' % Number.NaN);
write('hello' % Number.POSITIVE_INFINITY);
write('hello' % Number.NEGATIVE_INFINITY);
write('hello' % new Number(NaN));
write('hello' % new Number(+0));
write('hello' % new Number(-0));
write('hello' % new Number(0));
write('hello' % new Number(0.0));
write('hello' % new Number(-0.0));
write('hello' % new Number(+0.0));
write('hello' % new Number(1));
write('hello' % new Number(10));
write('hello' % new Number(10.0));
write('hello' % new Number(10.1));
write('hello' % new Number(-1));
write('hello' % new Number(-10));
write('hello' % new Number(-10.0));
write('hello' % new Number(-10.1));
write('hello' % new Number(Number.MAX_VALUE));
write('hello' % new Number(Number.MIN_VALUE));
write('hello' % new Number(Number.NaN));
write('hello' % new Number(Number.POSITIVE_INFINITY));
write('hello' % new Number(Number.NEGATIVE_INFINITY));
write('hello' % '');
write('hello' % 0xa);
write('hello' % 04);
write('hello' % 'hello');
write('hello' % 'hel' + 'lo');
write('hello' % String(''));
write('hello' % String('hello'));
write('hello' % String('h' + 'ello'));
write('hello' % new String(''));
write('hello' % new String('hello'));
write('hello' % new String('he' + 'llo'));
write('hello' % new Object());
write('hello' % new Object());
write('hello' % [1, 2, 3]);
write('hello' % [1 ,2 , 3]);
write('hello' % new Array(3));
write('hello' % Array(3));
write('hello' % new Array(1 ,2 ,3));
write('hello' % Array(1));
write('hello' % foo);
write('hel' + 'lo' % undefined);
write('hel' + 'lo' % null);
write('hel' + 'lo' % true);
write('hel' + 'lo' % false);
write('hel' + 'lo' % Boolean(true));
write('hel' + 'lo' % Boolean(false));
write('hel' + 'lo' % new Boolean(true));
write('hel' + 'lo' % new Boolean(false));
write('hel' + 'lo' % NaN);
write('hel' + 'lo' % +0);
write('hel' + 'lo' % -0);
write('hel' + 'lo' % 0);
write('hel' + 'lo' % 0.0);
write('hel' + 'lo' % -0.0);
write('hel' + 'lo' % +0.0);
write('hel' + 'lo' % 1);
write('hel' + 'lo' % 10);
write('hel' + 'lo' % 10.0);
write('hel' + 'lo' % 10.1);
write('hel' + 'lo' % -1);
write('hel' + 'lo' % -10);
write('hel' + 'lo' % -10.0);
write('hel' + 'lo' % -10.1);
write('hel' + 'lo' % Number.MAX_VALUE);
write('hel' + 'lo' % Number.MIN_VALUE);
write('hel' + 'lo' % Number.NaN);
write('hel' + 'lo' % Number.POSITIVE_INFINITY);
write('hel' + 'lo' % Number.NEGATIVE_INFINITY);
write('hel' + 'lo' % new Number(NaN));
write('hel' + 'lo' % new Number(+0));
write('hel' + 'lo' % new Number(-0));
write('hel' + 'lo' % new Number(0));
write('hel' + 'lo' % new Number(0.0));
write('hel' + 'lo' % new Number(-0.0));
write('hel' + 'lo' % new Number(+0.0));
write('hel' + 'lo' % new Number(1));
write('hel' + 'lo' % new Number(10));
write('hel' + 'lo' % new Number(10.0));
write('hel' + 'lo' % new Number(10.1));
write('hel' + 'lo' % new Number(-1));
write('hel' + 'lo' % new Number(-10));
write('hel' + 'lo' % new Number(-10.0));
write('hel' + 'lo' % new Number(-10.1));
write('hel' + 'lo' % new Number(Number.MAX_VALUE));
write('hel' + 'lo' % new Number(Number.MIN_VALUE));
write('hel' + 'lo' % new Number(Number.NaN));
write('hel' + 'lo' % new Number(Number.POSITIVE_INFINITY));
write('hel' + 'lo' % new Number(Number.NEGATIVE_INFINITY));
write('hel' + 'lo' % '');
write('hel' + 'lo' % 0xa);
write('hel' + 'lo' % 04);
write('hel' + 'lo' % 'hello');
write('hel' + 'lo' % 'hel' + 'lo');
write('hel' + 'lo' % String(''));
write('hel' + 'lo' % String('hello'));
write('hel' + 'lo' % String('h' + 'ello'));
write('hel' + 'lo' % new String(''));
write('hel' + 'lo' % new String('hello'));
write('hel' + 'lo' % new String('he' + 'llo'));
write('hel' + 'lo' % new Object());
write('hel' + 'lo' % new Object());
write('hel' + 'lo' % [1, 2, 3]);
write('hel' + 'lo' % [1 ,2 , 3]);
write('hel' + 'lo' % new Array(3));
write('hel' + 'lo' % Array(3));
write('hel' + 'lo' % new Array(1 ,2 ,3));
write('hel' + 'lo' % Array(1));
write('hel' + 'lo' % foo);
write(String('') % undefined);
write(String('') % null);
write(String('') % true);
write(String('') % false);
write(String('') % Boolean(true));
write(String('') % Boolean(false));
write(String('') % new Boolean(true));
write(String('') % new Boolean(false));
write(String('') % NaN);
write(String('') % +0);
write(String('') % -0);
write(String('') % 0);
write(String('') % 0.0);
write(String('') % -0.0);
write(String('') % +0.0);
write(String('') % 1);
write(String('') % 10);
write(String('') % 10.0);
write(String('') % 10.1);
write(String('') % -1);
write(String('') % -10);
write(String('') % -10.0);
write(String('') % -10.1);
write(String('') % Number.MAX_VALUE);
write(String('') % Number.MIN_VALUE);
write(String('') % Number.NaN);
write(String('') % Number.POSITIVE_INFINITY);
write(String('') % Number.NEGATIVE_INFINITY);
write(String('') % new Number(NaN));
write(String('') % new Number(+0));
write(String('') % new Number(-0));
write(String('') % new Number(0));
write(String('') % new Number(0.0));
write(String('') % new Number(-0.0));
write(String('') % new Number(+0.0));
write(String('') % new Number(1));
write(String('') % new Number(10));
write(String('') % new Number(10.0));
write(String('') % new Number(10.1));
write(String('') % new Number(-1));
write(String('') % new Number(-10));
write(String('') % new Number(-10.0));
write(String('') % new Number(-10.1));
write(String('') % new Number(Number.MAX_VALUE));
write(String('') % new Number(Number.MIN_VALUE));
write(String('') % new Number(Number.NaN));
write(String('') % new Number(Number.POSITIVE_INFINITY));
write(String('') % new Number(Number.NEGATIVE_INFINITY));
write(String('') % '');
write(String('') % 0xa);
write(String('') % 04);
write(String('') % 'hello');
write(String('') % 'hel' + 'lo');
write(String('') % String(''));
write(String('') % String('hello'));
write(String('') % String('h' + 'ello'));
write(String('') % new String(''));
write(String('') % new String('hello'));
write(String('') % new String('he' + 'llo'));
write(String('') % new Object());
write(String('') % new Object());
write(String('') % [1, 2, 3]);
write(String('') % [1 ,2 , 3]);
write(String('') % new Array(3));
write(String('') % Array(3));
write(String('') % new Array(1 ,2 ,3));
write(String('') % Array(1));
write(String('') % foo);
write(String('hello') % undefined);
write(String('hello') % null);
write(String('hello') % true);
write(String('hello') % false);
write(String('hello') % Boolean(true));
write(String('hello') % Boolean(false));
write(String('hello') % new Boolean(true));
write(String('hello') % new Boolean(false));
write(String('hello') % NaN);
write(String('hello') % +0);
write(String('hello') % -0);
write(String('hello') % 0);
write(String('hello') % 0.0);
write(String('hello') % -0.0);
write(String('hello') % +0.0);
write(String('hello') % 1);
write(String('hello') % 10);
write(String('hello') % 10.0);
write(String('hello') % 10.1);
write(String('hello') % -1);
write(String('hello') % -10);
write(String('hello') % -10.0);
write(String('hello') % -10.1);
write(String('hello') % Number.MAX_VALUE);
write(String('hello') % Number.MIN_VALUE);
write(String('hello') % Number.NaN);
write(String('hello') % Number.POSITIVE_INFINITY);
write(String('hello') % Number.NEGATIVE_INFINITY);
write(String('hello') % new Number(NaN));
write(String('hello') % new Number(+0));
write(String('hello') % new Number(-0));
write(String('hello') % new Number(0));
write(String('hello') % new Number(0.0));
write(String('hello') % new Number(-0.0));
write(String('hello') % new Number(+0.0));
write(String('hello') % new Number(1));
write(String('hello') % new Number(10));
write(String('hello') % new Number(10.0));
write(String('hello') % new Number(10.1));
write(String('hello') % new Number(-1));
write(String('hello') % new Number(-10));
write(String('hello') % new Number(-10.0));
write(String('hello') % new Number(-10.1));
write(String('hello') % new Number(Number.MAX_VALUE));
write(String('hello') % new Number(Number.MIN_VALUE));
write(String('hello') % new Number(Number.NaN));
write(String('hello') % new Number(Number.POSITIVE_INFINITY));
write(String('hello') % new Number(Number.NEGATIVE_INFINITY));
write(String('hello') % '');
write(String('hello') % 0xa);
write(String('hello') % 04);
write(String('hello') % 'hello');
write(String('hello') % 'hel' + 'lo');
write(String('hello') % String(''));
write(String('hello') % String('hello'));
write(String('hello') % String('h' + 'ello'));
write(String('hello') % new String(''));
write(String('hello') % new String('hello'));
write(String('hello') % new String('he' + 'llo'));
write(String('hello') % new Object());
write(String('hello') % new Object());
write(String('hello') % [1, 2, 3]);
write(String('hello') % [1 ,2 , 3]);
write(String('hello') % new Array(3));
write(String('hello') % Array(3));
write(String('hello') % new Array(1 ,2 ,3));
write(String('hello') % Array(1));
write(String('hello') % foo);
write(String('h' + 'ello') % undefined);
write(String('h' + 'ello') % null);
write(String('h' + 'ello') % true);
write(String('h' + 'ello') % false);
write(String('h' + 'ello') % Boolean(true));
write(String('h' + 'ello') % Boolean(false));
write(String('h' + 'ello') % new Boolean(true));
write(String('h' + 'ello') % new Boolean(false));
write(String('h' + 'ello') % NaN);
write(String('h' + 'ello') % +0);
write(String('h' + 'ello') % -0);
write(String('h' + 'ello') % 0);
write(String('h' + 'ello') % 0.0);
write(String('h' + 'ello') % -0.0);
write(String('h' + 'ello') % +0.0);
write(String('h' + 'ello') % 1);
write(String('h' + 'ello') % 10);
write(String('h' + 'ello') % 10.0);
write(String('h' + 'ello') % 10.1);
write(String('h' + 'ello') % -1);
write(String('h' + 'ello') % -10);
write(String('h' + 'ello') % -10.0);
write(String('h' + 'ello') % -10.1);
write(String('h' + 'ello') % Number.MAX_VALUE);
write(String('h' + 'ello') % Number.MIN_VALUE);
write(String('h' + 'ello') % Number.NaN);
write(String('h' + 'ello') % Number.POSITIVE_INFINITY);
write(String('h' + 'ello') % Number.NEGATIVE_INFINITY);
write(String('h' + 'ello') % new Number(NaN));
write(String('h' + 'ello') % new Number(+0));
write(String('h' + 'ello') % new Number(-0));
write(String('h' + 'ello') % new Number(0));
write(String('h' + 'ello') % new Number(0.0));
write(String('h' + 'ello') % new Number(-0.0));
write(String('h' + 'ello') % new Number(+0.0));
write(String('h' + 'ello') % new Number(1));
write(String('h' + 'ello') % new Number(10));
write(String('h' + 'ello') % new Number(10.0));
write(String('h' + 'ello') % new Number(10.1));
write(String('h' + 'ello') % new Number(-1));
write(String('h' + 'ello') % new Number(-10));
write(String('h' + 'ello') % new Number(-10.0));
write(String('h' + 'ello') % new Number(-10.1));
write(String('h' + 'ello') % new Number(Number.MAX_VALUE));
write(String('h' + 'ello') % new Number(Number.MIN_VALUE));
write(String('h' + 'ello') % new Number(Number.NaN));
write(String('h' + 'ello') % new Number(Number.POSITIVE_INFINITY));
write(String('h' + 'ello') % new Number(Number.NEGATIVE_INFINITY));
write(String('h' + 'ello') % '');
write(String('h' + 'ello') % 0xa);
write(String('h' + 'ello') % 04);
write(String('h' + 'ello') % 'hello');
write(String('h' + 'ello') % 'hel' + 'lo');
write(String('h' + 'ello') % String(''));
write(String('h' + 'ello') % String('hello'));
write(String('h' + 'ello') % String('h' + 'ello'));
write(String('h' + 'ello') % new String(''));
write(String('h' + 'ello') % new String('hello'));
write(String('h' + 'ello') % new String('he' + 'llo'));
write(String('h' + 'ello') % new Object());
write(String('h' + 'ello') % new Object());
write(String('h' + 'ello') % [1, 2, 3]);
write(String('h' + 'ello') % [1 ,2 , 3]);
write(String('h' + 'ello') % new Array(3));
write(String('h' + 'ello') % Array(3));
write(String('h' + 'ello') % new Array(1 ,2 ,3));
write(String('h' + 'ello') % Array(1));
write(String('h' + 'ello') % foo);
write(new String('') % undefined);
write(new String('') % null);
write(new String('') % true);
write(new String('') % false);
write(new String('') % Boolean(true));
write(new String('') % Boolean(false));
write(new String('') % new Boolean(true));
write(new String('') % new Boolean(false));
write(new String('') % NaN);
write(new String('') % +0);
write(new String('') % -0);
write(new String('') % 0);
write(new String('') % 0.0);
write(new String('') % -0.0);
write(new String('') % +0.0);
write(new String('') % 1);
write(new String('') % 10);
write(new String('') % 10.0);
write(new String('') % 10.1);
write(new String('') % -1);
write(new String('') % -10);
write(new String('') % -10.0);
write(new String('') % -10.1);
write(new String('') % Number.MAX_VALUE);
write(new String('') % Number.MIN_VALUE);
write(new String('') % Number.NaN);
write(new String('') % Number.POSITIVE_INFINITY);
write(new String('') % Number.NEGATIVE_INFINITY);
write(new String('') % new Number(NaN));
write(new String('') % new Number(+0));
write(new String('') % new Number(-0));
write(new String('') % new Number(0));
write(new String('') % new Number(0.0));
write(new String('') % new Number(-0.0));
write(new String('') % new Number(+0.0));
write(new String('') % new Number(1));
write(new String('') % new Number(10));
write(new String('') % new Number(10.0));
write(new String('') % new Number(10.1));
write(new String('') % new Number(-1));
write(new String('') % new Number(-10));
write(new String('') % new Number(-10.0));
write(new String('') % new Number(-10.1));
write(new String('') % new Number(Number.MAX_VALUE));
write(new String('') % new Number(Number.MIN_VALUE));
write(new String('') % new Number(Number.NaN));
write(new String('') % new Number(Number.POSITIVE_INFINITY));
write(new String('') % new Number(Number.NEGATIVE_INFINITY));
write(new String('') % '');
write(new String('') % 0xa);
write(new String('') % 04);
write(new String('') % 'hello');
write(new String('') % 'hel' + 'lo');
write(new String('') % String(''));
write(new String('') % String('hello'));
write(new String('') % String('h' + 'ello'));
write(new String('') % new String(''));
write(new String('') % new String('hello'));
write(new String('') % new String('he' + 'llo'));
write(new String('') % new Object());
write(new String('') % new Object());
write(new String('') % [1, 2, 3]);
write(new String('') % [1 ,2 , 3]);
write(new String('') % new Array(3));
write(new String('') % Array(3));
write(new String('') % new Array(1 ,2 ,3));
write(new String('') % Array(1));
write(new String('') % foo);
write(new String('hello') % undefined);
write(new String('hello') % null);
write(new String('hello') % true);
write(new String('hello') % false);
write(new String('hello') % Boolean(true));
write(new String('hello') % Boolean(false));
write(new String('hello') % new Boolean(true));
write(new String('hello') % new Boolean(false));
write(new String('hello') % NaN);
write(new String('hello') % +0);
write(new String('hello') % -0);
write(new String('hello') % 0);
write(new String('hello') % 0.0);
write(new String('hello') % -0.0);
write(new String('hello') % +0.0);
write(new String('hello') % 1);
write(new String('hello') % 10);
write(new String('hello') % 10.0);
write(new String('hello') % 10.1);
write(new String('hello') % -1);
write(new String('hello') % -10);
write(new String('hello') % -10.0);
write(new String('hello') % -10.1);
write(new String('hello') % Number.MAX_VALUE);
write(new String('hello') % Number.MIN_VALUE);
write(new String('hello') % Number.NaN);
write(new String('hello') % Number.POSITIVE_INFINITY);
write(new String('hello') % Number.NEGATIVE_INFINITY);
write(new String('hello') % new Number(NaN));
write(new String('hello') % new Number(+0));
write(new String('hello') % new Number(-0));
write(new String('hello') % new Number(0));
write(new String('hello') % new Number(0.0));
write(new String('hello') % new Number(-0.0));
write(new String('hello') % new Number(+0.0));
write(new String('hello') % new Number(1));
write(new String('hello') % new Number(10));
write(new String('hello') % new Number(10.0));
write(new String('hello') % new Number(10.1));
write(new String('hello') % new Number(-1));
write(new String('hello') % new Number(-10));
write(new String('hello') % new Number(-10.0));
write(new String('hello') % new Number(-10.1));
write(new String('hello') % new Number(Number.MAX_VALUE));
write(new String('hello') % new Number(Number.MIN_VALUE));
write(new String('hello') % new Number(Number.NaN));
write(new String('hello') % new Number(Number.POSITIVE_INFINITY));
write(new String('hello') % new Number(Number.NEGATIVE_INFINITY));
write(new String('hello') % '');
write(new String('hello') % 0xa);
write(new String('hello') % 04);
write(new String('hello') % 'hello');
write(new String('hello') % 'hel' + 'lo');
write(new String('hello') % String(''));
write(new String('hello') % String('hello'));
write(new String('hello') % String('h' + 'ello'));
write(new String('hello') % new String(''));
write(new String('hello') % new String('hello'));
write(new String('hello') % new String('he' + 'llo'));
write(new String('hello') % new Object());
write(new String('hello') % new Object());
write(new String('hello') % [1, 2, 3]);
write(new String('hello') % [1 ,2 , 3]);
write(new String('hello') % new Array(3));
write(new String('hello') % Array(3));
write(new String('hello') % new Array(1 ,2 ,3));
write(new String('hello') % Array(1));
write(new String('hello') % foo);
write(new String('he' + 'llo') % undefined);
write(new String('he' + 'llo') % null);
write(new String('he' + 'llo') % true);
write(new String('he' + 'llo') % false);
write(new String('he' + 'llo') % Boolean(true));
write(new String('he' + 'llo') % Boolean(false));
write(new String('he' + 'llo') % new Boolean(true));
write(new String('he' + 'llo') % new Boolean(false));
write(new String('he' + 'llo') % NaN);
write(new String('he' + 'llo') % +0);
write(new String('he' + 'llo') % -0);
write(new String('he' + 'llo') % 0);
write(new String('he' + 'llo') % 0.0);
write(new String('he' + 'llo') % -0.0);
write(new String('he' + 'llo') % +0.0);
write(new String('he' + 'llo') % 1);
write(new String('he' + 'llo') % 10);
write(new String('he' + 'llo') % 10.0);
write(new String('he' + 'llo') % 10.1);
write(new String('he' + 'llo') % -1);
write(new String('he' + 'llo') % -10);
write(new String('he' + 'llo') % -10.0);
write(new String('he' + 'llo') % -10.1);
write(new String('he' + 'llo') % Number.MAX_VALUE);
write(new String('he' + 'llo') % Number.MIN_VALUE);
write(new String('he' + 'llo') % Number.NaN);
write(new String('he' + 'llo') % Number.POSITIVE_INFINITY);
write(new String('he' + 'llo') % Number.NEGATIVE_INFINITY);
write(new String('he' + 'llo') % new Number(NaN));
write(new String('he' + 'llo') % new Number(+0));
write(new String('he' + 'llo') % new Number(-0));
write(new String('he' + 'llo') % new Number(0));
write(new String('he' + 'llo') % new Number(0.0));
write(new String('he' + 'llo') % new Number(-0.0));
write(new String('he' + 'llo') % new Number(+0.0));
write(new String('he' + 'llo') % new Number(1));
write(new String('he' + 'llo') % new Number(10));
write(new String('he' + 'llo') % new Number(10.0));
write(new String('he' + 'llo') % new Number(10.1));
write(new String('he' + 'llo') % new Number(-1));
write(new String('he' + 'llo') % new Number(-10));
write(new String('he' + 'llo') % new Number(-10.0));
write(new String('he' + 'llo') % new Number(-10.1));
write(new String('he' + 'llo') % new Number(Number.MAX_VALUE));
write(new String('he' + 'llo') % new Number(Number.MIN_VALUE));
write(new String('he' + 'llo') % new Number(Number.NaN));
write(new String('he' + 'llo') % new Number(Number.POSITIVE_INFINITY));
write(new String('he' + 'llo') % new Number(Number.NEGATIVE_INFINITY));
write(new String('he' + 'llo') % '');
write(new String('he' + 'llo') % 0xa);
write(new String('he' + 'llo') % 04);
write(new String('he' + 'llo') % 'hello');
write(new String('he' + 'llo') % 'hel' + 'lo');
write(new String('he' + 'llo') % String(''));
write(new String('he' + 'llo') % String('hello'));
write(new String('he' + 'llo') % String('h' + 'ello'));
write(new String('he' + 'llo') % new String(''));
write(new String('he' + 'llo') % new String('hello'));
write(new String('he' + 'llo') % new String('he' + 'llo'));
